import React, { Component } from 'react';
import PropsProxy from './PropsProxy'

// ES7中添加了一个decorator的属性，使用@符表示，可以更精简的书写
@PropsProxy
export default class Usual extends Component {

  constructor() {
    super();
    this.state = {
      username: 'usual',
    }
  }

  render() {
    console.log(this.props, this.state, 'props');
    const { state, props } = this;
    return (
      <div onClick={props.handleClick}>
        Usual-----------属性代理
        <p>props的username----{props.username}</p>
        <p>state的username----{state.username}</p>
      </div>
    )
  }
}


// ES6 写法
// class Usual extends Component {
//   constructor() {
//     super();
//     this.state = {
//       username: 'usual',
//     }
//   }

//   render() {
//     console.log(this.props, this.state, 'props');
//     const { state, props } = this;
//     return (
//       <div onClick={props.handleClick}>
//         Usual-----------
//         <p>props的username----{props.username}</p>
//         <p>state的username----{state.username}</p>
//       </div>
//     )
//   }
// }

// Usual = PropsProxy(Usual);

// export default Usual;